package com.netx.ebs;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.Cookie;

import com.netx.data.Connection;
import com.netx.data.DatabaseException;


public interface EbsRequest extends HttpServletRequest {

	public ServletContext getServletContext();
	public EbsContext getEbsContext();
	public Connection getDatabaseConnection() throws DatabaseException;
	public Session getUserSession();
	public Cookie getCookie(String name);

	public String		getParameter(String name);
	public String		getParameter(String name, boolean required);
	public Byte			getByteParameter(String name);
	public Byte			getByteParameter(String name, boolean required);
	public Short		getShortParameter(String name);
	public Short		getShortParameter(String name, boolean required);
	public Integer		getIntParameter(String name);
	public Integer		getIntParameter(String name, boolean required);
	public Long			getLongParameter(String name);
	public Long			getLongParameter(String name, boolean required);
	public Float		getFloatParameter(String name);
	public Float		getFloatParameter(String name, boolean required);
	public Double		getDoubleParameter(String name);
	public Double		getDoubleParameter(String name, boolean required);
	public boolean		getBooleanParameter(String name);
	
	public String getQueryString(boolean decode);
	public String getCompleteRequestURL();
	public String getCompleteRequestURL(boolean decode);
	
}
